|
Component Object Model(COM、コンポーネント・オブジェクト・モデル)とは、マイクロソフト が提唱するソフトウェアの再利用を目的とした技術のことである。ソフトウェア間での通信に用いられる。 COMを使用して開発されたソフトウェアをCOMコンポーネントと呼ぶ。COMコンポーネントは、特定の開発言語に依存せず、C言語やJavaなど、様々な言語により開発を行うことができる。COMという用語はソフトウェア開発の世界ではOLE、OLEオートメーション、ActiveX、COM+、DCOMをカバーする包括的な用語としてよく使われる。COMコンポーネントは、他ソフトウェアと通信するためのインタフェースを有している。アプリケーションソフトウェアは、公開されているインタフェースを介してCOMコンポーネントと通信をし、それらを組み合わせることでサービスを提供する。言語による割り付けの違いは、参照カウンタを利用してオブジェクトの生成と破棄を彼ら自身の責任とすることにより解決する。オブジェクトの異なるインタフェース間のキャストは QueryInterface 関数で行う。メソッド呼び出しをデリゲート(委譲)する形でサブオブジェクトの集合(アグリゲーションと呼ぶ)を生成する方法がCOM内における最適な継承方法である。COMは主としてMicrosoft Windows上で使用されるが、UNIXやMac OSでも使用することができる。COMの前身はOLEである。COMは.NET Frameworkに置き換えられてゆくものと考えられており、またWindows Communication Foundation (WCF) を通じてWebサービスをサポートする。WCFがXMLベースのSOAPメッセージを利用するのに対し、ネットワークで接続されたDCOMはバイナリの独自仕様フォーマットを利用する。COMはまたソフトウェアコンポーネントシステムとしてCORBAやJava Beansと競合関係にある。 == COMの歴史 == * 1991年、COMの前身であるOLEが、OLE 1としてWindows 3.1とともに公開され、1992年にはOLE 2が公開された。 * 1994年、OCXもしくはOLEコントロールがVBXコントロールの後継として紹介される。それと同時に、OLEは、もはや単なる頭文字ではなく、コンポーネント技術を表す用語となった。 * 1996年初頭、マイクロソフトは、OLEのうちでインターネットと関連のあるいくつかの技術をActiveXとして名称変更した。やがて、OLEとして公開されていた技術がActiveXに統合され始める。 * 1997年、マイクロソフトは再びコンポーネントを使用するこれらの技術の変名を行い、Component Object Modelとした。 抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)』 ■ウィキペディアで「Component Object Model」の詳細全文を読む スポンサード リンク
|